." Copyright (c) 2005, 2011, Oracle and/or its affiliates. All rights reserved.
."
.TH xjc 1 "05 Jul 2012"

.LP
.SH "名前"
xjc \- XMLバインドのためのJava(tm)アーキテクチャ
.br
バインディング・コンパイラ
.LP
.LP
\f3仕様バージョン:\fP 2.1
.br
\f3リファレンス実装(RI)バージョン:\fP 2.1.3
.LP
.SH "xjcの起動"
.LP
.LP
バインディング・コンパイラを起動するには、使用するプラットフォームに応じた\f2bin\fPディレクトリ内の\f2xjc\fPシェル・スクリプトを使用します。また、バインディング・コンパイラを実行するためのAntタスクも用意されています。
.na
\f2XJC Antタスクの使用\fP @
.fi
https://jaxb.dev.java.net/nonav/2.1.3/docs/xjcTask.htmlの手順を参照してください。
.LP
.LP
\f2% xjc \-help\fP
.LP
.SS 
出力
.LP
.nf
\f3
.fl
Usage: xjc [\-options ...] <schema file/URL/dir/jar> ... [\-b <bindinfo>] ...
.fl
If dir is specified, all schema files in it will be compiled.
.fl
If jar is specified, /META\-INF/sun\-jaxb.episode binding file will be compiled.
.fl
Options:
.fl
  \-nv                :  do not perform strict validation of the input schema(s)
.fl
  \-extension         :  allow vendor extensions \- do not strictly follow the Compatibility Rules and App E.2 from the JAXB Spec
.fl
  \-b <file/dir>      :  specify external bindings files (each <file> must have its own \-b); if a directory is given, **/*.xjb is searched
.fl
  \-d <dir>           :  generated files will go into this directory
.fl
  \-p <pkg>           :  specifies the target package
.fl
  \-httpproxy <proxy> :  set HTTP/HTTPS proxy; format is [user[:password]@]proxyHost:proxyPort
.fl
  \-httpproxyfile <f> :  works like \-httpproxy but takes the argument in a file to protect password
.fl
  \-classpath <arg>   :  specify where to find user class files
.fl
  \-catalog <file>    :  specify catalog files to resolve external entity references; support TR9401, XCatalog, and OASIS XML Catalog format
.fl
  \-readOnly          :  generated files will be in read\-only mode
.fl
  \-npa               :  suppress generation of package level annotations (**/package\-info.java)
.fl
  \-no\-header         :  suppress generation of a file header with timestamp
.fl
  \-target 2.0        :  behave like XJC 2.0 and generate code that doesnt use any 2.1 features
.fl
  \-xmlschema         :  treat input as W3C XML Schema (default)
.fl
  \-relaxng           :  treat input as RELAX NG (experimental,unsupported)
.fl
  \-relaxng\-compact   :  treat input as RELAX NG compact syntax (experimental,unsupported)
.fl
  \-dtd               :  treat input as XML DTD (experimental,unsupported)
.fl
  \-wsdl              :  treat input as WSDL and compile schemas inside it (experimental,unsupported)
.fl
  \-verbose           :  be extra verbose
.fl
  \-quiet             :  suppress compiler output
.fl
  \-help              :  display this help message
.fl
  \-version           :  display version information
.fl

.fl

.fl
Extensions:
.fl
  \-Xlocator          :  enable source location support for generated code
.fl
  \-Xsync\-methods     :  generate accessor methods with the 'synchronized' keyword
.fl
  \-mark\-generated    :  mark the generated code as @javax.annotation.Generated
.fl
  \-episode <FILE>    :  generate the episode file for separate compilation
.fl
\fP
.fi

.LP
.SH "オプション"
.LP
.RS 3
.TP 3
\-nv 
デフォルトでは、XJCバインディング・コンパイラは、ソース・スキーマを処理する前に厳密な検証を実行します。このオプションを使用すると、厳密なスキーマ検証か無効になります。これは、バインディング・コンパイラが検証を一切実行しないということではありません。より厳密でない検証を実行するということです。 
.TP 3
\-extension 
デフォルトでは、XJCバインディング・コンパイラは、JAXB仕様のCompatibilityの章で説明されているルールを厳密に強制します。付録E.2には、JAXB v1.0で完全にはサポートされていない一連のW3C XMLスキーマ機能が定義されています。場合によっては、このスイッチで有効になる「\-extension」モードでそれらの機能が使用できる場合があります。また、デフォルトの厳密なモードでは、仕様に定義されているバインディング・カスタマイズのみが使用できます。「\-extension」スイッチを指定すれば、JAXB Vendor Extensionを使用できます。 
.TP 3
\-b <file> 
処理する外部バインディング・ファイルを1つまたは複数指定します。(バインディング・ファイルごとに\f2「\-b」\fPスイッチを指定する必要があります。)外部バインディング・ファイルの構文は非常に柔軟です。複数のスキーマのカスタマイズが含まれる1つのバインディング・ファイルを使用したり、それらのカスタマイズを複数のバインディング・ファイルに分割したりできます。次に例を示します。\f2xjc schema1.xsd schema2.xsd schema3.xsd \-b bindings123.xjb\fP
.br
\f2xjc schema1.xsd schema2.xsd schema3.xsd \-b bindings1.xjb \-b bindings2.xjb \-b bindings3.xjb\fPまた、コマンドラインにスキーマ・ファイルとバインディング・ファイルを指定する順番は任意です。 
.TP 3
\-d <dir> 
デフォルトでは、XJCバインディング・コンパイラは、Javaコンテンツ・クラスを現在のディレクトリに生成します。このオプションを使用すると、代替出力ディレクトリを指定できます。出力ディレクトリはあらかじめ存在している必要があります。XJCバインディング・コンパイラは、このディレクトリを自動的に作成しません。 
.TP 3
\-p <pkg> 
このコマンドライン・オプション経由でターゲット・パッケージを指定した場合、その指定内容は、パッケージ名に対するすべてのバインディング・カスタマイズや、仕様で規定されているデフォルトのパッケージ名アルゴリズムよりも優先されます。 
.TP 3
\-httpproxy <proxy> 
HTTP/HTTPSプロキシを指定します。形式は[user[:password]@]proxyHost[:proxyPort]です。従来の\f2\-host\fPおよび\f2\-port\fPは、下位互換性のためにリファレンス実装(RI)ではサポートされていますが、推奨されなくなりました。このオプションで指定されたパスワードは、\f2top\fPコマンドを使用するユーザーなど、他のユーザーが表示できる引数であることに注意してください。セキュリティを高めるには、次の\f2\-httpproxyfile\fPを使用してください。 
.TP 3
\-httpproxyfile <file> 
HTTP/HTTPSプロキシをファイル経由で指定します。形式は前述のものと同じですが、このファイル内に指定されたパスワードを他のユーザーが表示することはできません。 
.TP 3
\-classpath <arg> 
\f2<jxb:javaType>\fPおよび\f2<xjc:superClass>\fPカスタマイズが使用するクライアント・アプリケーションのクラス・ファイルの検索場所を指定します。 
.TP 3
\-catalog <file> 
外部エンティティ参照を解決するカタログ・ファイルを指定します。TR9401、XCatalogおよびOASIS XML Catalog形式がサポートされます。詳細は、XML Entity and URI Resolversのドキュメントを参照するか、\f2catalog\-resolver\fPサンプル・アプリケーションを調べてください。 
.TP 3
\-readOnly 
デフォルトでは、XJCバインディング・コンパイラは、生成するJavaソース・ファイルを書込みから保護しません。このオプションを使用すると、XJCバインディング・コンパイラは生成されるJavaソースを強制的に読取り専用にします。 
.TP 3
\-npa 
パッケージ・レベルの注釈を**/package\-info.javaに生成することを抑制します。このスイッチを使用して生成するコードでは、これらの注釈が他の生成済みクラスに内部化されます。 
.TP 3
\-no\-header 
多少のメモとタイムスタンプを含むファイル・ヘッダー・コメントの生成を抑制します。これを使用すると、生成されたコードでdiffを使用しやすくなります。 
.TP 3
\-target 2.0 
JAXB 2.1機能に依存するコードを生成しないようにします。これにより、生成されたコードをJAXB 2.0ランタイム(JavaSE 6など)で実行できるようになります。 
.TP 3
\-xmlschema 
入力スキーマをW3C XMLスキーマとして扱います(デフォルト)。このスイッチを指定しなくても、入力スキーマはW3C XMLスキーマと見なされます。 
.TP 3
\-relaxng 
入力スキーマをRELAX NGとして扱います(試験的、未サポート)。RELAX NGスキーマのサポートはJAXB Vendor Extensionとして提供されています。 
.TP 3
\-relaxng\-compact 
入力スキーマをRELAX NG圧縮構文として処理します(試験的、未サポート)。RELAX NGスキーマのサポートはJAXB Vendor Extensionとして提供されています。 
.TP 3
\-dtd 
入力スキーマをXML DTDとして扱います(試験的、未サポート)。RELAX NGスキーマのサポートはJAXB Vendor Extensionとして提供されています。 
.TP 3
\-wsdl 
入力をWSDLとして扱い、その内部のスキーマをコンパイルします(試験的、未サポート)。 
.TP 3
\-quiet 
進捗情報や警告など、コンパイラの出力を抑制します。 
.TP 3
\-verbose 
情報メッセージを出力したり特定のエラー発生時にスタック・トレースを表示したりするなど、きわめて冗長になります。 
.TP 3
\-help 
コンパイラ・スイッチの概要を表示します。 
.TP 3
\-version 
コンパイラのバージョン情報を表示します。 
.TP 3
<schema file/URL/dir> 
コンパイル対象となる1つまたは複数のスキーマ・ファイルを指定します。ユーザーがディレクトリを指定した場合、xjcはそのディレクトリを走査し、そこで見つかったすべてのスキーマ・ファイルをコンパイルします。 
.RE

.LP
.SS 
非標準のコマンドライン・オプション
.LP
.RS 3
.TP 3
\-Xlocator 
生成されたコードでは、非整列化の後にJava Beanインスタンスに含まれるソースXMLに関するSAX Locator情報が公開されます。 
.TP 3
\-Xsync\-methods 
生成されたすべてのメソッド・シグニチャに\f2synchronized\fPキーワードが含められます。 
.TP 3
\-mark\-generated 
生成されたコードに注釈\f2@javax.annotation.Generated\fPを付けます。 
.TP 3
\-episode <file> 
コンパイルごとに指定されたエピソード・ファイルを生成します。 
.RE

.LP
.SS 
非推奨コマンドライン・オプションおよび削除されたコマンドライン・オプション
.LP
.RS 3
.TP 3
\-host & \-port 
これらのオプションは非推奨となり、\f3\-httpproxy\fPオプションで置き換えられました。これらのオプションは、下位互換性を確保する目的で引続きサポートされますが、ドキュメントには記載されず、将来のリリースで削除される可能性もあります。 
.TP 3
\-use\-runtime 
JAXB 2.0仕様では、移植性のあるランタイムが定義されたため、JAXB RIが**/impl/runtimeパッケージを生成する必要がなくなりました。このため、このスイッチは不要となり、削除されました。 
.TP 3
\-source 
\-source互換性スイッチは、JAXB 2.0の最初のEarly Access版で導入されました。このスイッチは、JAXB 2.0の今後のリリースから削除されることになりました。1.0.xコードを生成する必要がある場合は、1.0.xコードベースのインストールを使用してください。 
.RE

.LP
.SS 
コンパイラの制限
.LP
.LP
通常は、関連するすべてのスキーマを、同じバインディング・コンパイラ・スイッチを指定して1つの単位としてコンパイルするのが最も安全です。
.LP
.LP
xjcを実行するときは、次に示す制限に注意してください。これらの問題のほとんどは、xjcを何度か呼び出して複数のスキーマをコンパイルする場合にのみ当てはまります。
.LP
.RS 3
.TP 2
o
複数のスキーマを同時にコンパイルする場合は、ターゲットのJavaパッケージ名に次の優先順位のルールが適用されることに注意してください。 
.RS 3
.TP 3
1.
「\f2\-p\fP」コマンドライン・オプションが最も優先されます。 
.TP 3
2.
<\f2jaxb:package\fP>のカスタマイズ 
.TP 3
3.
\f2targetNamespace\fPが宣言されている場合は、仕様に定義されている\f2targetNamespace\fP \-> Javaパッケージ名のアルゴリズムを適用します。 
.TP 3
4.
\f2targetNamespace\fPが宣言されていない場合は、「generated」という名前のハードコードされたパッケージを使用します。 
.RE
.TP 2
o
名前空間ごとに複数の<\f2jaxb:schemaBindings\fP>を持つことは不正です。このため、1つのターゲット名前空間内の2つのスキーマを異なるJavaパッケージにコンパイルすることはできません。 
.TP 2
o
1つのJavaパッケージにコンパイルされるすべてのスキーマは、XJCバインディング・コンパイラに同時に送信する必要があります。個別にコンパイルすることはできず、予期したとおりに動作しません。 
.TP 2
o
複数のスキーマ・ファイルにまたがる要素置換グループは、同時にコンパイルする必要があります。 
.RE

.LP
.SH "関連項目"
.LP
.RS 3
.TP 2
o
バインディング・コンパイラ(XJC)の実行: [
.na
\f2コマンドラインの命令\fP @
.fi
https://jaxb.dev.java.net/nonav/2.1.3/docs/xjc.html、
.na
\f2XJC Antタスクの使用\fP @
.fi
https://jaxb.dev.java.net/nonav/2.1.3/docs/xjcTask.html] 
.TP 2
o
.na
\f2XMLバインドのためのJavaアーキテクチャ(JAXB)\fP @
.fi
http://docs.oracle.com/javase/7/docs/technotes/guides/xml/jaxb/index.html 
.RE

.LP
 
